1. Field of the Invention
The present invention relates to the field of providing communications services. In particular, the present invention relates to a system and method that provides a service state table that matches an operational specification for a service application such as video or voice to a performance capacity of a communications network to provide the service application to a particular customer.
2. Description of the Related Art
Current broadband communication networks, such as ADSL (Asynchronous Digital Subscriber Line) networks provide services such as voice, data, and video to a customer. Hyper Text Transfer Protocol (HTTP), service is commonly provided for web browsing. Voice communication service can be provided using example, Voice over Internet Protocol (also referred to as Voice over IP, or VoIP). VoIP is a method of transferring audio signals using Internet Protocol. VoIP is a commonly used protocol for transferring voice data over Internet connections. Video can be provided using high volume continuous data streams over an Internet connection.
Services such as these are provided by transferring data over a high speed network connection between a service provider (SP) network and a customer. The network comprises dedicated or shared physical layers (i.e., phones lines, fiber optics) which have highly variable and dynamic operating parameters. A variety of protocols are employed for transferring the data over the SP network. An ADSL connection, for example, operates over existing telephone lines. An ADSL connection comprises a variety of network elements such as a modem for connecting a customer to the Internet, an Internet Protocol (IP) layer for routing data, and asynchronous transfer mode (ATM) network layer for transfer of data cells through an asynchronous transfer mode network.
There are a number of standard engineering specifications involved in providing a service from an SP network to a customer. One group of specifications configures provided services and another group of specifications describes the parameters of the network connection over which the service is provided. On an abstract level, these two groups of specifications are referred to as the “Network Performance Level” (which indicates performance parameters related to the SP network and the “Service Level” (which indicates configuration parameters related to the service provided).
Code Violation Tolerance (CVT) is an example of a performance parameter of the Network Performance Level. CVT indicates a tolerable level of noise which can be present on a network while providing a given service. High levels of noise usually lead to a need to retransmit data lost due to noise. The level of noise that can be tolerated (CVT) usually depends on the type of service being provided. Video service typically requires a lower CVT than a web browsing service. For example, a video service comprises a steady stream of data being provided to an end user. A large amount of noise on a network providing video service would require significant data retransmission and become disruptive to the video viewing experience (i.e., the video image might stop or produce visual anomalies). Thus, in order to provide a video service to a customer, a low CVT, is desired, on the network. In comparison web browsing can be performed over a relatively noisy network. The web browsing data stream is usually intermittent so that there is more opportunity to retransmit data lost to high noise levels without disrupting the browsing experience. Thus, the operating level of network parameters, such as CVT, varies depending upon the service being provided.
Within the Service Layer, each service has a variety of configuration parameters pertaining to one or more network elements. For instance, web browsing has a different set of configuration parameters for data transfer through a modem than for data transfer through an ATM switch. A service can be provided when parameters of the Network Performance Layer as well as the configuration parameters of the Service Layer are met. A service state change occurs whenever a customer switches from one service to another (i.e., from web browsing to video) or from one network element to another (ATM to IP). Whenever there is a “state change”, a different set of network parameters and service configurations are considered.
Providing services, managing bandwidth allocation, and assuring a quality of service should not be one-time activities conducted only upon activation of the service to the customer. Rather, these parameters are constantly being updated in order to adapt to both dynamic and evolving service offerings and performance conditions. The current approach to providing services is often hard coded and employs a reactive brute force single service management approach. For the most part, Service Layer operations and Network Performance Layer data are often administered in a mutually exclusive manner. Current service management methods tend to rely on an architecture in which there is little monitoring of the network which tends to reduce the flexibility of the network. Current service management methods reduce support for the diverse and complex services having widely varied performance criteria, and hinders reaction to evolving conditions, such as changes in services or noise levels on the network. Thus, there is a need for a flexible solution for automating state changes based on network performance and service changes.